In video processing and use, it is often desirable to create a loop that, when played, appears to have an infinite duration. A loop is a repeated series of images that plays multiple times such that after the series of images is played at one iteration, the next iteration immediately begins. For example, a loop may be a one minute video clip of a fire that is repeatedly played on a screen in a hotel lobby to provide the appearance of a fire. Loop has many applications, such as providing ambiance in public or private locations (e.g., restaurants, homes, etc.).
Loop-extraction software is used to select loops in a given video and cause the selected loops to be displayed to a user. Extracting a loop allows playback software to return to an earlier point in time of a video and extend the video for a subsequent period (i.e., by replaying the loop one or more times from the earlier point in time).
Existing loop-extraction solutions present certain limitations. For example, virtual reality environments present 360-degree videos to users. A 360-degree video provides flexibility to view video content in multiple directions, thereby creating a more immersive experience. But existing loop-extraction solutions, which are designed for standard videos rather than 360-degree videos, do not account for the user's viewing direction or other indicators of a user's focus when selecting one or more loops to be played.